package com.fengxu.gamescript.data;

/**
 * 用户类型
 */
public enum UserType {
    Normal(0), // 普通用户
    Admin(1),  // 管理员用户
    Vip(2);    // vip用户

    // 用户角色索引
    private final Integer role;

    // 用户类型名
    private final String typeName;

    UserType(Integer role){
        this.role = role;
        switch (role){
            case 0:
                typeName = "普通用户";
                break;
            case 1:
                typeName = "管理员用户";
                break;
            case 2:
                typeName = "vip用户";
                break;
            default:
                typeName = "未知用户";
                break;
        }
    }

    /**
     * 根据用户角色返回用户枚举类型
     * @param role
     * @return
     */
    public static UserType valueOf(Integer role){
        for (UserType type : UserType.values()) {
            if(role.equals(type.role)){
                return type;
            }
        }
        return null;
    }

    public int getRole() {
        return role;
    }

    public String getTypeName() {
        return typeName;
    }
}
